/*
 * @description:sku列表数据结构
 * */

// sku列表的某一项公共数据类型
export interface skuInfoPublicType {
    id?: number;
    spuId: number; //所在的spuId
    price: number; //当前sku的价格
    skuName: string; //当前sku的名称
    skuDesc: string; //当前sku的描述
    weight: string; //当前sku的重量
    tmId: number; //当前sku所在的品牌id
    category3Id: number; //当前sku所在的三级分类的id
    skuDefaultImg: string; //当前sku的默认的图片
    isSale: number; //当前sku是否上架
    createTime?: string; //当前sku的创建时间
}

// sku某一项的数据类型
export interface skuInfoItemType extends skuInfoPublicType {
    skuImageList: null; //当前sku图片列表
    skuAttrValueList: null; //当前sku属性值列表
    skuSaleAttrValueList: null; //当前sku销售属性值列表
}

// sku列表的数据类型
export type skuInfoListType = skuInfoItemType[];

/*
 * @description:@sku图片列表的数据结构
 * */

// sku图片列表的某一项类型
export interface skuImageItemType {
    id?: number;
    skuId?: number; //所在的skuId
    imgName: string; //图片名称
    imgUrl: string; //图片地址
    spuImgId?: number; //在spu中的id
    isDefault?: string; //是否是当前的默认图片
}

// sku图片列表的数据类型
export type skuImageListType = skuImageItemType[];
/*
 * @description:sku平台属性值列表的数据结构
 * */

// sku平台属性值列表的某一项类型
export interface skuAttrValueItemType {
    id?: number;
    attrId: number; //当前平台属性值所在的平台属性在完整的平台属性列表中的id
    valueId: number; //当前平台属性值在当前属性的所有属性值中的id
    skuId?: number; //当前的skuId
    attrName?: string; //当前平台属性名
    valueName?: string; //当前的平台属性值
}

// sku平台属性值列表的数据类型
export type skuAttrValueListType = skuAttrValueItemType[];

/*
 * @description:sku销售属性值列表的数据结构
 * */

// sku销售属性值列表的某一项类型
export interface skuSaleAttrValueItemType {
    id?: number;
    skuId?: number; //当前所在的skuId
    spuId?: number; //当前sku所在的spuId
    saleAttrValueId: number; //当前销售属性值在他的完整销售属性值列表中的id
    saleAttrId: number; //当前销售属性在完整的销售属性列表中的id
    saleAttrName?: string; //销售属性名称
    saleAttrValueName?: string; //销售属性值的名称
}

// sku销售属性值列表的数据类型
export type skuSaleAttrValueListType = skuSaleAttrValueItemType[];

/*
 * @description:sku列表的详细数据结构
 * */

// sku列表的详细数据类型
export interface skuInfoItemDetailType extends skuInfoPublicType {
    skuImageList: skuImageListType; //当前sku图片列表
    skuAttrValueList: skuAttrValueListType; //当前sku属性值列表
    skuSaleAttrValueList: skuSaleAttrValueListType; //当前sku销售属性值列表
}

/*
 * @description:sku完整列表的数据结构
 * */

// sku完整列表的信息类型
export interface allSkuInfoDetailType {
    records: skuInfoListType;
    total: number;
    size: number;
    current: number;
    searchCount: boolean;
    pages: number;
}
